using System;
using System.Collections;
using System.Collections.Generic;

using NHibernate.Data.Base;

namespace NHibernate.Data.Models
{
    public partial class ReWineColor : BusinessBase<string>
    {
        #region Declarations

		private long _color = default(Int64);
		private long _wine = default(Int64);
		
		
		
		
        #endregion

        #region Constructors

        public ReWineColor() { }

        #endregion

        #region Methods

        public override int GetHashCode()
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            
            sb.Append(this.GetType().FullName);

            return sb.ToString().GetHashCode();
        }

        #endregion

        #region Properties

		public override string Id
		{
			get
			{
				System.Text.StringBuilder uniqueId = new System.Text.StringBuilder();
				uniqueId.Append(_color.ToString());
				uniqueId.Append("^");
				uniqueId.Append(_wine.ToString());
				return uniqueId.ToString();
			}
		}
		
		public virtual long Color
        {
            get { return _color; }
			set
			{
				
				OnColorChanging();
				_color = value;
				OnColorChanged();
			}
        }
		partial void OnColorChanging();
		partial void OnColorChanged();
		
		public virtual long Wine
        {
            get { return _wine; }
			set
			{
				
				OnWineChanging();
				_wine = value;
				OnWineChanged();
			}
        }
		partial void OnWineChanging();
		partial void OnWineChanged();
		
        #endregion
    }
}
